ListNode* removeNodes(ListNode* head) 
{
    if(!head) return nullptr;
    head->next = removeNodes(head->next);

    if(head->next && head->val < head->next->val)
        return head->next;
    else
        return head;
}